<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>flat_static_buffer_base</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter 1. Boost.Beast">
<link rel="up" href="../ref.html" title="This Page Intentionally Left Blank 2/2">
<link rel="prev" href="boost__beast__flat_static_buffer/reset.html" title="flat_static_buffer::reset">
<link rel="next" href="boost__beast__flat_static_buffer_base/const_buffers_type.html" title="flat_static_buffer_base::const_buffers_type">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="boost__beast__flat_static_buffer/reset.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__flat_static_buffer_base/const_buffers_type.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="beast.ref.boost__beast__flat_static_buffer_base"></a><a class="link" href="boost__beast__flat_static_buffer_base.html" title="flat_static_buffer_base">flat_static_buffer_base</a>
</h4></div></div></div>
<p>
        A dynamic buffer using a fixed size internal buffer.
      </p>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h0"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.synopsis"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.synopsis">Synopsis</a>
      </h5>
<p>
        Defined in header <code class="literal">&lt;<a href="../../../../../../boost/beast/core/flat_static_buffer.hpp" target="_top">boost/beast/core/flat_static_buffer.hpp</a>&gt;</code>
      </p>
<pre class="programlisting"><span class="keyword">class</span> <span class="identifier">flat_static_buffer_base</span>
</pre>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h1"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.types"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.types">Types</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/const_buffers_type.html" title="flat_static_buffer_base::const_buffers_type">const_buffers_type</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  The ConstBufferSequence used to represent the readable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/mutable_buffers_type.html" title="flat_static_buffer_base::mutable_buffers_type">mutable_buffers_type</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  The MutableBufferSequence used to represent the writable bytes.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h2"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.member_functions"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.member_functions">Member
        Functions</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/capacity.html" title="flat_static_buffer_base::capacity">capacity</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Return the maximum number of bytes, both readable and writable,
                  that can be held without requiring an allocation.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/cdata.html" title="flat_static_buffer_base::cdata">cdata</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Returns a constant buffer sequence representing the readable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/clear.html" title="flat_static_buffer_base::clear">clear</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Clear the readable and writable bytes to zero.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/commit.html" title="flat_static_buffer_base::commit">commit</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Append writable bytes to the readable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/consume.html" title="flat_static_buffer_base::consume">consume</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Remove bytes from beginning of the readable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/data.html" title="flat_static_buffer_base::data">data</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Returns a constant buffer sequence representing the readable bytes.
                  <br> <span class="silver">—</span><br> Returns a mutable
                  buffer sequence representing the readable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/flat_static_buffer_base.html" title="flat_static_buffer_base::flat_static_buffer_base">flat_static_buffer_base</a> <span class="silver">[constructor]</span></strong></span>
                </p>
              </td>
<td>
                <p>
                  Constructor.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/max_size.html" title="flat_static_buffer_base::max_size">max_size</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Return the maximum number of bytes, both readable and writable,
                  that can ever be held.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/prepare.html" title="flat_static_buffer_base::prepare">prepare</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Returns a mutable buffer sequence representing writable bytes.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/size.html" title="flat_static_buffer_base::size">size</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Returns the number of readable bytes.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h3"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.protected_member_functions"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.protected_member_functions">Protected
        Member Functions</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/flat_static_buffer_base.html" title="flat_static_buffer_base::flat_static_buffer_base">flat_static_buffer_base</a> <span class="silver">[constructor]</span></strong></span>
                </p>
              </td>
<td>
                <p>
                  Constructor.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <span class="bold"><strong><a class="link" href="boost__beast__flat_static_buffer_base/reset.html" title="flat_static_buffer_base::reset">reset</a></strong></span>
                </p>
              </td>
<td>
                <p>
                  Reset the pointed-to buffer.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h4"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.description"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.description">Description</a>
      </h5>
<p>
        A dynamic buffer encapsulates memory storage that may be automatically resized
        as required, where the memory is divided into two regions: readable bytes
        followed by writable bytes. These memory regions are internal to the dynamic
        buffer, but direct access to the elements is provided to permit them to be
        efficiently used with I/O operations. Objects of this type meet the requirements
        of <span class="emphasis"><em>DynamicBuffer</em></span> and have the following additional properties:
      </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
            A mutable buffer sequence representing the readable bytes is returned
            by <a class="link" href="boost__beast__flat_static_buffer_base/data.html" title="flat_static_buffer_base::data"><code class="computeroutput"><span class="identifier">data</span></code></a> when <code class="computeroutput"><span class="keyword">this</span></code>
            is non-const.
          </li>
<li class="listitem">
            Buffer sequences representing the readable and writable bytes, returned
            by <a class="link" href="boost__beast__flat_static_buffer_base/data.html" title="flat_static_buffer_base::data"><code class="computeroutput"><span class="identifier">data</span></code></a> and <a class="link" href="boost__beast__flat_static_buffer_base/prepare.html" title="flat_static_buffer_base::prepare"><code class="computeroutput"><span class="identifier">prepare</span></code></a>, will have length one.
          </li>
<li class="listitem">
            Ownership of the underlying storage belongs to the derived class.
          </li>
</ul></div>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h5"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.remarks"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.remarks">Remarks</a>
      </h5>
<p>
        Variables are usually declared using the template class <a class="link" href="boost__beast__flat_static_buffer.html" title="flat_static_buffer"><code class="computeroutput"><span class="identifier">flat_static_buffer</span></code></a>; however, to
        reduce the number of template instantiations, objects should be passed <a class="link" href="boost__beast__flat_static_buffer_base.html" title="flat_static_buffer_base"><code class="computeroutput"><span class="identifier">flat_static_buffer_base</span></code></a>&amp;
        .
      </p>
<h5>
<a name="beast.ref.boost__beast__flat_static_buffer_base.h6"></a>
        <span class="phrase"><a name="beast.ref.boost__beast__flat_static_buffer_base.see_also"></a></span><a class="link" href="boost__beast__flat_static_buffer_base.html#beast.ref.boost__beast__flat_static_buffer_base.see_also">See Also</a>
      </h5>
<p>
        <a class="link" href="boost__beast__flat_static_buffer.html" title="flat_static_buffer"><code class="computeroutput"><span class="identifier">flat_static_buffer</span></code></a>
      </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2016-2019 Vinnie
      Falco<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="boost__beast__flat_static_buffer/reset.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__flat_static_buffer_base/const_buffers_type.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
